package base.standard.auth;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

/**
 * Need auth
 *
 * @description: 权限鉴权
 * @author: cyj
 * @date 2020 -10-21 20:30:30
 */
@Target({METHOD})
@Retention(RUNTIME)
public @interface NeedAuth {

    /**
     * Auths string [ ]
     *
     * @return the string [ ]
     * @description: 需要的权限数组
     */
    String[] auths();

    /**
     * Auth logic auth logic
     *
     * @return the auth logic
     * @description: 需要权限的逻辑关系
     */
    AuthLogic authLogic() default AuthLogic.OR;

}

